home *** CD-ROM | disk | FTP | other *** search
/ PsL Monthly 1993 November / PSL Monthly Shareware CD-ROM (November 1993).iso / dos / prgmming / lines.bas < prev    next >
BASIC Source File  |  1993-09-21  |  1KB  |  60 lines

  1. DECLARE SUB HLine (Row%, Col%, Length%, Dbl%)
  2. CLS
  3. PRINT "║                 │  │     ║   ║     ║"
  4. PRINT "                  │        ║          "
  5. PRINT "║                 │     │  ║      ║  ║"
  6. PRINT
  7. PRINT
  8.  
  9. CALL HLine(2, 1, 38, 2)
  10.  
  11.  
  12.  
  13. SUB HLine (Row%, Col%, Length%, Dbl%)
  14.     SaveRow% = CSRLIN
  15.     SaveCol% = POS(0)
  16.   Single$ = "─┴┬┼╨╥───╫═╧╤╪╩╦═══╬"
  17.   T1% = SCREEN(Row%, Col%)
  18.   T2% = SCREEN(Row% - 1, Col%)
  19.   T3% = SCREEN(Row% + 1, Col%)
  20.   IF T2% = 179 AND T3% = 179 THEN T1% = 179
  21.   IF T2% = 186 AND T3% = 186 THEN T1% = 186
  22.   IF T2% = 186 AND Dbl% < 2 THEN
  23.     LOCATE Row%, Col%
  24.     PRINT "╟";
  25.     Col% = Col% + 1
  26.     Length% = Length% - 1
  27.    ELSEIF T2% = 186 AND Dbl% = 2 THEN
  28.     LOCATE Row%, Col%
  29.     PRINT "╠";
  30.     Col% = Col% + 1
  31.     Length% = Length% - 1
  32.   END IF
  33.   IF T1% = 179 AND Dbl% < 2 THEN
  34.     LOCATE Row%, Col%
  35.     PRINT "├";
  36.     Col% = Col% + 1
  37.     Length% = Length% - 1
  38.    ELSEIF T1% = 179 AND Dbl% = 2 THEN
  39.     LOCATE Row%, Col%
  40.     PRINT "╞";
  41.     Col% = Col% + 1
  42.     Length% = Length% - 1
  43.   END IF
  44.   FOR I% = Col% TO Col% + Length% - 1
  45.     IF Dbl% = 2 THEN C% = 11 ELSE C% = 1
  46.     T1% = SCREEN(Row% - 1, I%)
  47.     T2% = SCREEN(Row% + 1, I%)
  48.     IF T1% = 179 THEN C% = C% + 1
  49.     IF T2% = 179 THEN C% = C% + 2
  50.     IF T1% = 186 THEN C% = C% + 4
  51.     IF T2% = 186 THEN C% = C% + 5
  52.     C$ = MID$(Single$, C%, 1)
  53.     LOCATE Row%, I%
  54.     PRINT C$;
  55.     FOR aa = 1 TO 1000: NEXT
  56.     NEXT I%
  57.     LOCATE SaveRow%, SaveCol%
  58. END SUB
  59.  
  60.